<?php

/**
 * datos_externo actions.
 *
 * @package    atenea
 * @subpackage datos_externo
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
 */
class datos_externoActions extends autodatos_externoActions
{
public function executeEdit()
  {
    $this->dato_externo = $this->getDatoExternoOrCreate();

    if ($this->getRequest()->getMethod() == sfRequest::POST)
    {
      $this->updateDatoExternoFromRequest();

      $this->saveDatoExterno($this->dato_externo);

 /*     $this->setFlash('notice', 'Your modifications have been saved');

      if ($this->getRequestParameter('save_and_add'))
      {
        return $this->redirect('datos_externo/create');
      }
      else if ($this->getRequestParameter('save_and_list'))
      {
        return $this->redirect('datos_externo/list');
      }
      else
      {
        return $this->redirect('datos_externo/edit?id='.$this->dato_externo->getId());
      }
    }*/
    }
    else
    {
      $this->labels = $this->getLabels();
    }
  }
  
  protected function updateDatoExternoFromRequest()
  {
    $dato_externo = $this->getRequestParameter('dato_externo');

    $user = $this->getUser();
    
  	$externo = $user->getAttribute('invitado');
      	
  	$ced = $externo->getCedulaInvitado();
    
  	if (!isset($dato_externo['cedulaexterna']))
    {
      $this->dato_externo->setCedulaexterna($ced);
    }
    if (isset($dato_externo['especialidad']))
    {
      $this->dato_externo->setEspecialidad($dato_externo['especialidad']);
    }
    if (isset($dato_externo['direccion']))
    {
      $this->dato_externo->setDireccion($dato_externo['direccion']);
    }
    if (isset($dato_externo['telefono']))
    {
      $this->dato_externo->setTelefono($dato_externo['telefono']);
    }
    if (isset($dato_externo['nombre']))
    {
      $this->dato_externo->setNombre($dato_externo['nombre']);
    }
  }
  
 public function executeSave()
  {
    return $this->forward('datos_externo', 'edit');
  }
  
 protected function saveDatoExterno($dato_externo)
  {
  	$user = $this->getUser();
    $tallrs = $user->getAttribute('taller'); 
    $invit = $user->getAttribute('invitado');
  	$tallrs->save();
  	$id = $tallrs->getId();
    $invit->setTallerSesionId($id);
    $invit->save();
  	$dato_externo->save();
    $this->redirect('invitados/edit');
  }
  
}
